The present invention relates to a program production system for a semiconductor tester which produces device testing programs to be used on a semiconductor tester.
Semiconductor testers that perform prescribed operating tests on various semiconductor devices are known in the conventional art. For example, a semiconductor tester suited to each type of semiconductor device is used when there is a semiconductor memory, a logic IC, and a linear IC in a semiconductor device used as a device to be tested.
These various types of semiconductor testers perform prescribed functional tests or DC tests by executing prescribed device testing programs produced by a user. A control device by which the user enters various operating instructions and which displays test results is connected to the semiconductor tester.
In general, a computer is used as the control device. In addition to the functions for controlling the semiconductor tester, it has functions for the user to produce device testing programs and is used as a program production device. The procedure by which the user uses the control device to create device testing programs is the same as the procedure for creating general-use programs. First, a source program is written using an editor. Next, an object program is created from the source program using a compiler. After that, a debugging operation is performed on the object program using a debugger to ascertain the existence of error locations, if any. If error locations are detected, the compiler is used once again to create an object program after correcting the corresponding locations in the source program using the editor. These operations of source program correction, object program creation, and debugging are repeated until there are no more error locations.
However, in the conventional semiconductor tester as described above, it is necessary to have exclusive drivers that perform input/output control of hardware peculiar to the semiconductor tester and data reading/writing for registers that carry out various operating instructions. Operating systems (hereafter xe2x80x9cOSxe2x80x9d) originally developed by manufacturers of semiconductor testers have heretofore been used as the OSs used by internal tester processors. For this reason, there has been a problem in that a great many work-hours are required in OS development. Furthermore, there is a problem in that the OS scale grows to a large size, since original OSs for semiconductor testers have generally been developed by partial change its kernels or adding new kernels by using a general-purpose OS.
Furthermore, since programs unique to the semiconductor tester are used as the device testing programs executed on the exclusive OS, there is a problem in that labor is required in program production because the user producing the device testing programs must search for various commands and functions peculiar to the device testing programs by referencing manuals until realizing the desired functions.
Moreover, since what the user can produce directly is a source program for the device testing program, after detecting error locations in the object program through a debugging operation, it is necessary to correct the locations corresponding to those errors in the source program using an editor and then to convert the source program once again into an object program using the compiler. Thus there is a problem in that a great many work-hours are required for this series of debugging operations in cases in which there are many error locations.
The present invention was accomplished in consideration of these points; the object of the present invention is to provide a program production system for semiconductor testers that can reduce the labor required to develop an OS and testing programs and that can simplify debugging operations.
In one preferred embodiment, the program production system for a semiconductor tester according to the present invention makes it possible to set the execution sequence of commands contained in a program simply by setting the positions of program cells displayed on a sequence setting screen and to set the functions for semiconductor testing, which are the command contents, by selecting from among a plurality of functions displayed on function setting screens; when parameters are needed for those functions, the program production system for a semiconductor tester according to the present invention makes it possible to perform those settings on the function setting screens. Therefore, since it is possible to perform production of a program while viewing various kinds of information displayed on screens with virtually no need to refer to manuals or the like, it is possible to significantly reduce the labor required for program production.
It is preferable that a program be created as an object by creating individual groupings made up of 1) prescribed code corresponding to function types set by a function setting unit and 2) parameter values that have been converted into an execution format by a parameters calculating unit corresponding to those functions, and then assembling those groupings into an execution sequence set by a sequence setting unit. With program production of this kind, it is possible to obtain a program that can be executed directly without performing a compiling operation. The work-hours required for debugging operations can be significantly reduced as a result, since when performing program debugging a common program is used as the target for both editing and debugging.
It is further preferable that the functions corresponding to the program commands and the accompanying parameters respectively correspond to functions of the C programming language and their corresponding parameters. Producing programs using the C language will make it possible to produce programs that can be executed using almost any general-use operating system or processor, so that almost no work-hours will be required in their development in comparison to the development and use of operating systems peculiar to a semiconductor tester.
Furthermore, it is preferable that debugging execution unit be provided to perform debugging operations by execution of the program targeted for production. Since it will then be possible to execute the produced program in its original form, debugging work can be performed in parallel with program production and editing work, thus making it possible to raise the work efficiency of program production.
Furthermore, since it is possible to execute a produced program in its original form, break points for interruption of processing during debugging operations can be set in apart of the program cells used in program production. This will make it possible to perform more efficient program production that takes debugging into account. Since setting the break points at the time of program production or editing will eliminate the need to set the break points each time the occasion arises during debugging, it will thus be possible to perform debugging work more efficiently.